77问答网
所有问题
当前搜索:
c语言 数组定义不能0
c语言
中,这样
定义
一维
数组
正确吗? int a[5]={0,1,2,3,4}
答:
int a[5]={
0
,1,2,3,4};语法上是正确的,分号
不可
漏写。这叫 声明与初始化。若写成: int a[]={0,1,2,3,4}; 也是可以的,会自动算出声明的是 int a[5];
c语言定义数组
时可以不写下标也不初始化赋值么?(如:int a[];)_百度...
答:
不可以
。但作为一个函数参数时,则可以:void foo(int bar[]){} 此时的bar,编译器并不会把它当成
数组
,而会把它当成指针。
C语言
中如何
定义数组
答:
C语言
中,同变量一样;
数组
也必须先
定义
后使用。一维数组的定义形式:类型标识符 数组名[常量表达式];例如int a[10]; 其中a为地址常量。如变量的定义一样,int a ;double a;float a等;数组的定义只是把后面的变量名改为数组名而已。int a[10]就是定义了一个数组名为a的数组;此数组有10...
C语言
中,
数组
初始化的问题
答:
{ int i;for(i=
0
;i<5;i++){ printf("%2d",a[i]);} printf("\n");} 上面的两个程序都没给出显示的初始化,来判断编译器是否对它进行初始化,对比下...运行后你会发现,
定义
为全局性质的
数组
的都会被编译器自动初始化为0 而非全局的,即局部性质的都不会被自动初始化 显示的是乱码 ...
C语言
cHAR型
数组
char str[10]={0}; 我在之后用str={0};为什么是语 ...
答:
意思就是一个包含十个字符的字符串*/ str={
0
};/*看来你还没有学到指针那一章吧,str是一个常量指针,
不能
被修改,而且你用给
数组
赋值的方式给一个指针赋值,更加错上加错*/ 注:数组的名字其实就是指向数组第一个元素的指针。str[10]是数组 str是指向str[0]的指针 ...
c语言数组
的
定义
答:
C语言
支持一维
数组
和多维数组。如果一个数组的所有元素都不是数组,那么该数组称为一维数组。在C语言中使用数组必须先进行
定义
,一维数组的定义方式为:类型说明符; 数组名 ;[常量表达式]。其中,类型说明符是任一种基本数据类型或构造数据类型。数组名是用户定义的数组标识符,方括号中的常量表达式表示...
c语言
书上说
数组
没赋值的元素都是0 可是我运行的时候基本都不是0...
答:
int num[10]={1};这样就让没赋值的都是0了 int num[10];这样只管分配内存,不管初始化,都是挺大或者挺小的数
C语言
中
数组定义不
正确的是哪项?
答:
1,2,3,4;一维数组的定义方式为类型说明符数组名[常量表达式]。
C语言
中多维数组赋初值时可以部分赋值,也可以不指定除第一维以外的其他维的大小,故选项C正确。另外,如果对全部数组元素都赋初值,则
定义数组
时对第一维的长度可以不指定,但第二维的长度
不能
省,所以选项B正确,而选项D是错误的。
C语言
关于
数组
赋初值的问题char buff[10]={0};
答:
是没有任何输出的,因为printf遇到的buff的第一个字符就是个字符串的结束符'\
0
'而如果这样写:include <stdio.h> void main { char buff[5]={'0'};printf("%s",buff);} 才会看到输出了一个'0'这才是你理解的给第一个单元赋值为‘0’。char buff[5]={0};是一种
定义
空字符
数组
的严谨的...
C
中私有成员
数组
在成员函数中初始化,a[]={
0
,0,0,0};会报错,而a[0]=...
答:
因为a[
0
[=0是
数组
的第0个给值为0,这个很正常,而前一个是什么鬼,
<涓婁竴椤
1
2
3
4
5
6
7
8
9
10
涓嬩竴椤
灏鹃〉
其他人还搜